const { Switch } = require("../lib/types");

module.exports = {
    name: "ngx_stream_ssl_module",
    map: {
        ssl_alpn: [String, , ["stream", "server"]],
        ssl_certificate: [String, , ["stream", "server"]],
        ssl_certificate_key: [String, , ["stream", "server"]],
        ssl_ciphers: [String, "HIGH:!aNULL:!MD5", ["stream", "server"]],
        ssl_client_certificate: [String, , ["stream", "server"]],
        ssl_conf_command: [String, , ["stream", "server"]],
        ssl_crl: [String, , ["stream", "server"]],
        ssl_dhparam: [String, , ["stream", "server"]],
        ssl_ecdh_curve: [String, "auto", ["stream", "server"]],
        ssl_handshake_timeout: [String, "60s", ["stream", "server"]],
        ssl_password_file: [String, , ["stream", "server"]],
        ssl_prefer_server_ciphers: [Switch, false, ["stream", "server"]],
        ssl_protocols: [String, "TLSv1 TLSv1.1 TLSv1.2", ["stream", "server"]],
        ssl_session_cache: [[Switch, String], "none", ["stream", "server"]],
        ssl_session_ticket_key: [String, , ["stream", "server"]],
        ssl_session_tickets: [Switch, true, ["stream", "server"]],
        ssl_session_timeout: [String, "5m", ["stream", "server"]],
        ssl_trusted_certificate: [String, , ["stream", "server"]],
        ssl_verify_client: [[Switch, String], false, ["stream", "server"]],
        ssl_verify_depth: [Number, 1, ["stream", "server"]]
    }
};